package com.whfc.mach.redis;


import com.whfc.mach.dto.AppMachDataLogDTO;
import com.whfc.mach.entity.AppMachDataLog;

import java.util.Date;
import java.util.List;

/**
 * @ClasssName MachDataRedisDao
 * @Author hw
 * @Date 2020/8/22 16:54
 * @Version 1.0
 */
public interface MachDataRedisDao {

    /**
     * 添加设备日志数据
     *
     * @param machId
     * @param date
     * @param logList
     */
    void addMachDataLog(Integer machId, Date date, List<AppMachDataLog> logList);

    /**
     * 添加设备日志数据
     *
     * @param machId
     * @param date
     * @param logList
     */
    void addMachDataLogDTO(Integer machId, Date date, List<AppMachDataLogDTO> logList);

    /**
     * 查询设备日志数据
     *
     * @param machId
     * @param date
     * @param startTime
     * @param endTime
     * @return
     */
    List<AppMachDataLog> getMachDataLog(Integer machId, Date date, Date startTime, Date endTime);

    /**
     * 查询设备日志数据
     *
     * @param machId
     * @param date
     * @param startTime
     * @param endTime
     * @return
     */
    List<AppMachDataLogDTO> getMachDataLogDTO(Integer machId, Date date, Date startTime, Date endTime);

    /**
     * 删除设备硬件数据日志缓存
     *
     * @param machId
     * @param date
     */
    void delMachData(Integer machId, Date date);

    /**
     * 判断设备数据缓存是否已存在
     *
     * @param machId
     * @param date
     * @return
     */
    boolean exists(Integer machId, Date date);

}
